home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / source / xdme_1.84_src.lha / XDME / Src / Var / SPC.tplt < prev    next >
Encoding:
Text File  |  1994-11-01  |  1.3 KB  |  68 lines

  1. $(@WITH@SVAR@static const char *spc_names[] = {
  2. $(@ITERATE@                "$(NAME)",
  3. )$(@ITERATE@#define      _I_$(NAME)_  $(IDX)
  4. )};
  5.  
  6. #define spc_num_vars (sizeof(spc_names)/sizeof(spc_names[0]))
  7.  
  8. static char *spc_get(long lock) {
  9.     long array[6];
  10.     char *value   = NULL;
  11.     char *av0_bak = av[0];
  12.     char *av1_bak = av[1];
  13.     char *av2_bak = av[2];
  14.     switch (lock) {
  15. $(@ITERATE@$(@IF@GETTABLE@$(@IF@?GET@     case _I_$(NAME)_:
  16.     $(GET)
  17.     ;;break;
  18. )))    default:
  19.     return NULL;
  20.     }
  21.     return value;
  22. } /* spc_get */
  23.  
  24. static int spc_set(long lock, char *value) {
  25.     long array[6];
  26.     char *av0_bak = av[0];
  27.     char *av1_bak = av[1];
  28.     char *av2_bak = av[2];
  29.     switch (lock) {
  30. $(@ITERATE@$(@IF@SETTABLE@$(@IF@?SET@    case _I_$(NAME)_:
  31.     $(SET)
  32.     ;;break;
  33. )))    default:
  34.     return 0;
  35.     }
  36.     return 1;
  37. } /* spc_set */
  38.  
  39. /* */
  40. static int spc_say(long lock) {
  41.     //long array[6];
  42.     switch (lock) {
  43. $(@ITERATE@$ (@IF@?SAY@    case _I_$(NAME)_:
  44.     $(SAY)
  45.     ;;break;
  46. ))    default:
  47.     return 0;
  48.     }
  49.     return 1;
  50. } /* spc_say * /
  51.  
  52. static long spc_killstack(long lock, char *value, APTR project) {
  53.     long check = 0;
  54.     //long array[6];
  55.     switch (lock) {
  56. $(@ITERATE@$ (@IF@?KILLSTACK@    case _I_$(NAME)_:
  57.     $(KILLSTACK)
  58.     ;;break;
  59. ))    default:
  60.     return 0;
  61.     }
  62.     return check == project;
  63. } /* spc_killstack */
  64. /* */
  65. )
  66.  
  67.  
  68.